﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Ledict.ConditionExtract.Model
{
   public class lawprovStatisticslawResultModelV3
    {
        public ResultModel result { get; set; }

        public lawprovStatisticslawResultBodyV3 body { get; set; }
    }

    public class ResultModel
    {
        public string code { get; set; }

        public string message { get; set; }
    }

    /// <summary>
    /// 返回值Body
    /// </summary>
    public class lawprovStatisticslawResultBodyV3
    {
        /// <summary>
        /// 相关法条的链接地址
        /// </summary>
        public string url { get; set; }

        /// <summary>
        /// 统计结果
        /// </summary>
        public List<lawprovStatisticslawResultBodyModel> statResult { get; set; }

        /// <summary>
        /// 数据列表
        /// </summary>
        public List<LawCatModel> dataList { get; set; }
    }

    public class lawprovStatisticslawResultBodyModel
    {
        /// <summary>
        /// 效力等级编码：STF_A
        /// </summary>
        public string effectiveGradeCode { get; set; }
        /// <summary>
        /// 效力等级名称：法律
        /// </summary>
        public string effectiveGradeName { get; set; }
        /// <summary>
        /// 该效力等级下的法规数量
        /// </summary>
        public int count { get; set; }
        /// <summary>
        /// 该效力等级下的法条数量
        /// 20220331syjie+
        /// </summary>
        public int countProv { get; set; }
        /// <summary>
        /// 排序
        /// </summary>
        public int sort { get; set; }
        /// <summary>
        /// 其子集
        /// </summary>
        public List<lawprovStatisticslawResultBodyModel> children { get; set; }

        public lawprovStatisticslawResultBodyModel()
        {
            children = new List<lawprovStatisticslawResultBodyModel>();
        }
    }

    /// <summary>
    /// 法规
    /// </summary>
    public class LawCatModel
    {
        /// <summary>
        /// 法规id
        /// </summary>
        public string catInId { get; set; }
        /// <summary>
        /// 法规名称
        /// </summary>
        public string catName { get; set; }
        /// <summary>
        /// 法规标准名称
        /// </summary>
        public string catStandardName { get; set; }
        /// <summary>
        /// 法规库名Code
        /// </summary>
        public string libraryID { get; set; }
        /// <summary>
        /// 法规库名Name
        /// 20220401syjie+
        /// </summary>
        public string libraryName { get; set; }
        /// <summary>
        /// 效力等级
        /// </summary>
        public string hwType { get; set; }
        /// <summary>
        /// 效力等级名称
        /// </summary>
        public string hwTypeName { get; set; }
        /// <summary>
        /// 效力等级排序
        /// </summary>
        public int hwTypeSort { get; set; }
        /// <summary>
        /// 发布文号
        /// </summary>
        public string fileCode { get; set; }
        /// <summary>
        /// 失效状态
        /// </summary>
        public string lostFlag { get; set; }
        /// <summary>
        /// 公布日期
        /// </summary>
        public string promuDate { get; set; }
        /// <summary>
        /// 生效日期
        /// </summary>
        public string effectiveDate { get; set; }
        /// <summary>
        /// 题注
        /// </summary>
        public string caption { get; set; }
        /// <summary>
        /// 条文数
        /// </summary>
        public int lawProvCount { get; set; }
        /// <summary>
        /// 是否存在更多法条（一篇法规中，如果满足条件的法条数多于已显示的法条数，则为true）
        /// </summary>
        public bool showmore { get; set; }
        /// <summary>
        /// 是否存在更多法规（列表中，如果法规数多于已显示的法规数，则为true）
        /// </summary>
        public bool existsFlag { get; set; }
        /// <summary>
        /// 条文列表
        /// </summary>
        public List<LatProvModel> lawProvs { get; set; }
    }

    /// <summary>
    /// 法条
    /// </summary>
    public class LatProvModel
    {
        /// <summary>
        /// 是否全选
        /// </summary>
        public bool isCheckAll { get { return false; } }
        /// <summary>
        /// 是否选中
        /// </summary>
        public bool isChecked { get { return false; } }

        /// <summary>
        /// 法条Id
        /// </summary>
        public string provInId { get; set; }
        /// <summary>
        /// 法条序号
        /// </summary>
        public string provNumber { get; set; }
        /// <summary>
        /// 法条名称
        /// </summary>
        public string provName { get; set; }
        /// <summary>
        /// 法条内容
        /// </summary>
        public string provText { get; set; }
        /// <summary>
        /// 法条内容（带样式）
        /// 20220402syjie+
        /// </summary>
        public string provTextClass { get; set; }
        /// <summary>
        /// 是否显示“法条溯源”按钮
        /// 20220402syjie+
        /// </summary>
        public bool isShowHistory { get; set; }
        /// <summary>
        /// 引用次数
        /// </summary>
        public int provReferenceCount { get; set; }
        /// <summary>
        /// 是否隐藏引用次数（补充的数据，要隐藏，引用次数只用于排序）
        /// 20210728syjie
        /// </summary>
        public bool isHideCount { get; set; }
        /// <summary>
        /// 关联案例地址
        /// </summary>
        public string relatedCaseURL { get; set; }
        /// <summary>
        /// 法规全文地址
        /// </summary>
        public string lawCatURL { get; set; }

        /// <summary>
        /// 是否存在款
        /// </summary>
        public bool existsClause { get; set; }
        /// <summary>
        /// 条文的款列表
        /// </summary>
        public List<LawProvClauseModel> provClauses { get; set; }
    }

    /// <summary>
    /// 款
    /// </summary>
    public class LawProvClauseModel
    {
        /// <summary>
        /// 是否全选
        /// </summary>
        public bool isCheckAll { get { return false; } }
        /// <summary>
        /// 是否选中
        /// </summary>
        public bool isChecked { get { return false; } }
        /// <summary>
        /// 款序号
        /// </summary>
        public string clauseNumber { get; set; }
        /// <summary>
        /// 款名称
        /// </summary>
        public string clauseName { get; set; }
        /// <summary>
        /// 项序号
        /// </summary>
        public string itemNumber { get; set; }
        /// <summary>
        /// 项名称
        /// </summary>
        public string itemName { get; set; }
        /// <summary>
        /// 款内容
        /// </summary>
        public string clauseText { get; set; }
        /// <summary>
        /// 款内容，带样式
        /// 20220505syjie+
        /// </summary>
        public string clauseTextClass { get; set; }
        /// <summary>
        /// 款ID
        /// </summary>
        public string clauseInID { get; set; }
        /// <summary>
        /// 款的项列表
        /// </summary>
        public List<LawProvClauseItemModel> clauseItems { get; set; }
    }

    /// <summary>
    /// 项
    /// </summary>
    public class LawProvClauseItemModel
    {
        /// <summary>
        /// 是否选中
        /// </summary>
        public bool isChecked { get { return false; } }
        /// <summary>
        /// 项序号
        /// </summary>
        public string itemNumber { get; set; }
        /// <summary>
        /// 项名称
        /// </summary>
        public string itemName { get; set; }
        /// <summary>
        /// 项内容
        /// </summary>
        public string itemText { get; set; }
        /// <summary>
        /// 项内容，带样式
        /// 20220505syjie+
        /// </summary>
        public string itemTextClass { get; set; }
        /// <summary>
        /// ID
        /// </summary>
        public string itemInID { get; set; }
    }
}
